From ba8ae70f8e72a1f164cbbb2487b0f24c8dd6ccd3 Mon Sep 17 00:00:00 2001 From: Stefano Stabellini Date: Mon, 9 Aug 2010 17:44:01 +0100 Subject: [PATCH] xl: support backend domid in config file for vifs Allow specification of backend domains for vifs, either in the config file or via network-attach. Signed-off-by: Mihir Nanavati Signed-off-by: Stefano Stabellini --- tools/libxl/xl_cmdimpl.c | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/tools/libxl/xl_cmdimpl.c b/tools/libxl/xl_cmdimpl.c index 638289ba12..b1f8d71d36 100644 --- a/tools/libxl/xl_cmdimpl.c +++ b/tools/libxl/xl_cmdimpl.c @@ -833,6 +833,11 @@ static void parse_config_data(const char *configfile_filename_report, nic->script = strdup(p2 + 1); } else if (!strcmp(p, "vifname")) { nic->ifname = strdup(p2 + 1); + } else if (!strcmp(p, "backend")) { + if(libxl_name_to_domid(&ctx, (p2 + 1), &(nic->backend_domid))) { + fprintf(stderr, "Specified backend domain does not exist, defaulting to Dom0\n"); + nic->backend_domid = 0; + } } else if (!strcmp(p, "rate")) { fprintf(stderr, "the rate parameter for vifs is currently not supported\n"); } else if (!strcmp(p, "accel")) { @@ -4012,10 +4017,9 @@ int main_networkattach(int argc, char **argv) } else if (!strncmp("script=", *argv, 6)) { nic.script = (*argv) + 6; } else if (!strncmp("backend=", *argv, 8)) { - val = strtoul((*argv) + 8, &endptr, 10); - if (((*argv) + 8) == endptr) { - fprintf(stderr, "Invalid parameter `backend'.\n"); - return 1; + if(libxl_name_to_domid(&ctx, ((*argv) + 8), &val)) { + fprintf(stderr, "Specified backend domain does not exist, defaulting to Dom0\n"); + val = 0; } nic.backend_domid = val; } else if (!strncmp("vifname=", *argv, 8)) { -- 2.30.2